<!DOCTYPE html>
<html lang="en-US" dir="ltr">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>抖音平台SDK | RsCode</title>
    <meta name="description" content="抖音开放平台SDK相关开发资料">
    <meta name="generator" content="VitePress v1.0.2">
    <link rel="preload stylesheet" href="/assets/style.BsBCFzMC.css" as="style">
    
    <script type="module" src="/assets/app.CqgVlO9t.js"></script>
    <link rel="preload" href="/assets/inter-roman-latin.Bu8hRsVA.woff2" as="font" type="font/woff2" crossorigin="">
    <link rel="modulepreload" href="/assets/chunks/framework.CI8or701.js">
    <link rel="modulepreload" href="/assets/chunks/theme.B2CONEdC.js">
    <link rel="modulepreload" href="/assets/douyin_readme.md.CeVYCJkJ.lean.js">
    <link rel="shortcut icon" href="/assets/images/favicon.ico">
    <script>var _hmt=_hmt||[];let hm=document.createElement("script");hm.src="https://hm.baidu.com/hm.js?5c52154150152a6045bd8c1d5a2b3122";let s=document.getElementsByTagName("script")[0];hm.id="bd",s.parentNode.insertBefore(hm,s);</script>
    <script src="https://lf-cdn.coze.cn/obj/unpkg/flow-platform/chat-app-sdk/0.1.0-beta.5/libs/cn/index.js" type="text/javascript"></script>
    <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
    <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
  </head>
  <body>
    <div id="app"><div class="Layout" data-v-5d98c3a5><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0f60ec36></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0f60ec36> Skip to content </a><!--]--><!----><header class="VPNav" data-v-5d98c3a5 data-v-ae24b3ad><div class="VPNavBar has-sidebar top" data-v-ae24b3ad data-v-ccf7ddec><div class="wrapper" data-v-ccf7ddec><div class="container" data-v-ccf7ddec><div class="title" data-v-ccf7ddec><div class="VPNavBarTitle has-sidebar" data-v-ccf7ddec data-v-ab179fa1><a class="title" href="/" data-v-ab179fa1><!--[--><!--]--><!----><span data-v-ab179fa1>RsCode</span><!--[--><!--]--></a></div></div><div class="content" data-v-ccf7ddec><div class="content-body" data-v-ccf7ddec><!--[--><!--]--><div class="VPNavBarSearch search" data-v-ccf7ddec><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-ccf7ddec data-v-7f418b0f><span id="main-nav-aria-label" class="visually-hidden" data-v-7f418b0f>Main Navigation</span><!--[--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-7f418b0f data-v-b6c34ac9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-b6c34ac9><span class="text" data-v-b6c34ac9><!----><span data-v-b6c34ac9>RsCode助手</span><span class="vpi-chevron-down text-icon" data-v-b6c34ac9></span></span></button><div class="menu" data-v-b6c34ac9><div class="VPMenu" data-v-b6c34ac9 data-v-e7ea1737><div class="items" data-v-e7ea1737><!--[--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/config.html" data-v-43f1e123><!--[-->基础配置<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/utils.html" data-v-43f1e123><!--[-->常用代码<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/appsettings.html" data-v-43f1e123><!--[-->appsettings<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/db/database.html" data-v-43f1e123><!--[-->数据库操作<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/security/security.html" data-v-43f1e123><!--[-->数据安全<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/storage/demo.html" data-v-43f1e123><!--[-->存储示例<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/rscode/plugins.html" data-v-43f1e123><!--[-->插件开发<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup active" data-v-7f418b0f data-v-b6c34ac9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-b6c34ac9><span class="text" data-v-b6c34ac9><!----><span data-v-b6c34ac9>第三方平台SDK</span><span class="vpi-chevron-down text-icon" data-v-b6c34ac9></span></span></button><div class="menu" data-v-b6c34ac9><div class="VPMenu" data-v-b6c34ac9 data-v-e7ea1737><div class="items" data-v-e7ea1737><!--[--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/payment/readme.html" data-v-43f1e123><!--[-->支付平台SDK<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link" href="/wx/readme.html" data-v-43f1e123><!--[-->微信平台SDK<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link active" href="/douyin/readme.html" data-v-43f1e123><!--[-->抖音平台SDK<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><a class="VPLink link vp-external-link-icon VPNavBarMenuLink" href="https://kefu.rs888.net" target="_blank" rel="noreferrer" tabindex="0" data-v-7f418b0f data-v-9c663999><!--[--><span data-v-9c663999>智能客服系统</span><!--]--></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-7f418b0f data-v-b6c34ac9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-b6c34ac9><span class="text" data-v-b6c34ac9><!----><span data-v-b6c34ac9>AI工具箱</span><span class="vpi-chevron-down text-icon" data-v-b6c34ac9></span></span></button><div class="menu" data-v-b6c34ac9><div class="VPMenu" data-v-b6c34ac9 data-v-e7ea1737><div class="items" data-v-e7ea1737><!--[--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link vp-external-link-icon" href="https://api.rs888.net/app/index.html" target="_blank" rel="noreferrer" data-v-43f1e123><!--[-->AI工具箱在线版<!--]--></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-e7ea1737 data-v-43f1e123><a class="VPLink link vp-external-link-icon" href="https://pan.baidu.com/s/1flQwaG1rWf0-Ea6ZvvS74Q?pwd=zfj1" target="_blank" rel="noreferrer" data-v-43f1e123><!--[-->AI工具箱window版<!--]--></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-ccf7ddec data-v-e6aabb21><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-e6aabb21 data-v-d1f28634 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-d1f28634></span><span class="vpi-moon moon" data-v-d1f28634></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-ccf7ddec data-v-0394ad82 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/kuiyu/RsCode" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-ccf7ddec data-v-d0bd9dde data-v-b6c34ac9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-b6c34ac9><span class="vpi-more-horizontal icon" data-v-b6c34ac9></span></button><div class="menu" data-v-b6c34ac9><div class="VPMenu" data-v-b6c34ac9 data-v-e7ea1737><!----><!--[--><!--[--><!----><div class="group" data-v-d0bd9dde><div class="item appearance" data-v-d0bd9dde><p class="label" data-v-d0bd9dde>Appearance</p><div class="appearance-action" data-v-d0bd9dde><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-d0bd9dde data-v-d1f28634 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-d1f28634></span><span class="vpi-moon moon" data-v-d1f28634></span><!--]--></span></span></button></div></div></div><div class="group" data-v-d0bd9dde><div class="item social-links" data-v-d0bd9dde><div class="VPSocialLinks social-links-list" data-v-d0bd9dde data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/kuiyu/RsCode" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-ccf7ddec data-v-e5dd9c1c><span class="container" data-v-e5dd9c1c><span class="top" data-v-e5dd9c1c></span><span class="middle" data-v-e5dd9c1c></span><span class="bottom" data-v-e5dd9c1c></span></span></button></div></div></div></div><div class="divider" data-v-ccf7ddec><div class="divider-line" data-v-ccf7ddec></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-5d98c3a5 data-v-a6f0e41e><div class="container" data-v-a6f0e41e><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-a6f0e41e><span class="vpi-align-left menu-icon" data-v-a6f0e41e></span><span class="menu-text" data-v-a6f0e41e>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-a6f0e41e data-v-d2ecc192><button data-v-d2ecc192>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-5d98c3a5 data-v-575e6a36><div class="curtain" data-v-575e6a36></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-575e6a36><span class="visually-hidden" id="sidebar-aria-label" data-v-575e6a36> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>热门功能</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/appsettings.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>appsettings</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/log.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>日志管理</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/Ioc.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>依赖注入</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/dto.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据传输</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/msg-formater.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据格式</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/validate.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据验证</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/cache.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据缓存</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/exception.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>异常处理</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/webapi.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>文档生成</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/threads.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>线程操作</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/ScheduleJob.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>计划任务</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/plugins.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>插件管理</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/utils.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>常用代码</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/filter.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>过滤器</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/sse.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>SSE</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/i18n.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>国际化</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>数据库</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/db/database.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据库配置</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/db/unitofwork.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>UnitOfWork</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/db/freesql.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>FreeSql说明</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>对象存储</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/storage/demo.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>存储示例</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/storage/config.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>参数配置</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/storage/local.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>本地存储</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/storage/qiniu-api.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>七牛存储</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>安全认证</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/security/auth.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>认证授权</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/security/security.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>数据安全</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/security/cors.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>跨域设置</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/rscode/security/authcode.html" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>验证码</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-5d98c3a5 data-v-1428d186><div class="VPDoc has-sidebar has-aside" data-v-1428d186 data-v-39a288b8><!--[--><!--]--><div class="container" data-v-39a288b8><div class="aside" data-v-39a288b8><div class="aside-curtain" data-v-39a288b8></div><div class="aside-container" data-v-39a288b8><div class="aside-content" data-v-39a288b8><div class="VPDocAside" data-v-39a288b8 data-v-3f215769><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" role="navigation" data-v-3f215769 data-v-935f8a84><div class="content" data-v-935f8a84><div class="outline-marker" data-v-935f8a84></div><div class="outline-title" role="heading" aria-level="2" data-v-935f8a84>大纲</div><nav aria-labelledby="doc-outline-aria-label" data-v-935f8a84><span class="visually-hidden" id="doc-outline-aria-label" data-v-935f8a84> Table of Contents for current page </span><ul class="VPDocOutlineItem root" data-v-935f8a84 data-v-b933a997><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-3f215769></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-39a288b8><div class="content-container" data-v-39a288b8><!--[--><!--]--><main class="main" data-v-39a288b8><div style="position:relative;" class="vp-doc _douyin_readme" data-v-39a288b8><div><h2 id="快速使用" tabindex="-1">快速使用 <a class="header-anchor" href="#快速使用" aria-label="Permalink to &quot;快速使用&quot;">​</a></h2><ol><li>添加抖音服务</li></ol><p>引用 <code>RsCode.Douyin.dll</code></p><div class="language-csharp vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">csharp</span><pre class="shiki shiki-themes github-light github-dark vp-code"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">servcies.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">AddDouyin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">();</span></span></code></pre></div><ol start="2"><li>添加抖音参数配置</li></ol><p>douyin.json配置</p><div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark vp-code"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{  </span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">  &quot;app&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: [</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">    {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">      &quot;appid&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;tt6be31d5ef&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">      &quot;secret&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;8ea50e45ac8ea5&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">      &quot;token&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;4NTe3b&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">      &quot;salt&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;4NTe3b5bEvzpN834&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">      &quot;privateKeyPath&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;cert/douyin/privatekey.pem&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">//应用的私钥</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 	  &quot;publicKeyPath&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;cert/douyin/publickey.pem&quot;</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">    //抖音平台的公钥</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">    }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">  ]</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p>项目根目录下，创建cert文件夹，保存公钥与私钥</p><ol start="3"><li>密钥生成</li></ol><h3 id="创建应用公钥" tabindex="-1">创建应用公钥 <a class="header-anchor" href="#创建应用公钥" aria-label="Permalink to &quot;创建应用公钥&quot;">​</a></h3><p>应用公钥和私钥的生成方式可参考：</p><p>更详细的证书制作过程，查看这篇文章 <a href="https://mp.weixin.qq.com/s?__biz=MzI2NTUyNzgwMg==&amp;mid=2247483704&amp;idx=1&amp;sn=b4fc33bfe12dd303fa8475f4f2409169&amp;chksm=ea9d49adddeac0bbe3a8c6dbb970f4b741572244c651b4cf8fc9407d7f70f96d950f002c891e&amp;token=2073611602&amp;lang=zh_CN#rd" target="_blank" rel="noreferrer">Cert证书制作教程</a></p><p>windows下制作证书</p><div class="language-text vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">text</span><pre class="shiki shiki-themes github-light github-dark vp-code"><code><span class="line"><span>openssl genrsa -out d:\privatekey.pem 2048</span></span>
<span class="line"><span>openssl rsa -in d:\privatekey.pem -pubout -out d:\publickey.pem</span></span></code></pre></div><h3 id="上传应用公钥" tabindex="-1">上传应用公钥 <a class="header-anchor" href="#上传应用公钥" aria-label="Permalink to &quot;上传应用公钥&quot;">​</a></h3><p>登录「<a href="https://developer.open-douyin.com/" target="_blank" rel="noreferrer">抖音开放平台</a>」，进入小程序的「开发管理-开发设置」页，在「密钥设置」处点击“更新”</p><p><img src="https://sf1-cdn-tos.douyinstatic.com/obj/microapp/frontend/docs/images/1280X1280%20(1)-5212092303134899.PNG" alt="img"></p><p>在cert文件夹中准备两个证书文件 应用私钥privatekey.pem 和平台公钥publickey.pem</p><p>应用私钥privatekey.pem 复制上一步生成的privatekey.pem即可</p><p>平台公钥publickey.pem，到抖音平台-某小程序-开发-开发配置，显示的平台公钥中，复制它，保存到publickey.pem中</p><p>先生成密钥，再测试上线，不用官方提供的参数，有坑</p><p><strong>回调签名算法</strong></p><p>支付回调通知开发者服务端时，会使用如下的算法进行签名，供开发者验证请求的来源：</p><ol><li><p>在抖音开放平台-【某小程序】-【功能】-【支付】-【支付产品】-【支付设置】中获取Token， 按照接口文档将所有请求字段（验证时注意不包含 sign 签名本身，不包含空字段与 type 常量字段）内容与平台上配置的 token 一起，进行字典序排序。</p></li><li><p>所有字段内容连接成一个字符串</p></li><li><p>使用 sha-1 算法计算字符串摘要作为签名</p></li></ol><p>上述步骤计算出的签名 signature，和支付回调请求体里面的 signature 对比，如果不一致，说明请求不可信任(如被篡改)</p><p><a href="https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/open-capacity/guaranteed-payment/TE/#_%E7%AC%AC%E4%BA%94%E6%AD%A5%E5%8A%A0%E7%AD%BE%E9%AA%8C%E7%AD%BE%E5%BC%80%E5%8F%91" target="_blank" rel="noreferrer">抖音支付之加签验签开发</a></p><p>抖音开放平台-【某小程序】-【功能】-【支付】-【支付方式管理】-【支付设置】中查看支付系统秘钥 SALT</p><p>参数的签名：1排除参数app_id, third_party_id,sign,other_settle_params 不参与签名</p><p>2对其它参数的值（如果参数值为null,添加<code>&lt;nil&gt;</code>）和支付设置中的salt一起进行ascii码排序，</p><p>密钥（功能管理-支付-支付设置-SALT）</p><p>请求参数中签名是md5签名</p><p>回调验签字符例子</p><div class="language-json vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark vp-code"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;appid&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;tt6be31d5ef4dfda0b01&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;cp_orderno&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;174430247936&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;cp_extra&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;way&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;10&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;channel_no&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;TP2023052621135500973701287530&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;channel_gateway_no&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;payment_order_no&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;DPS2305262113589004661092192889&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;out_channel_order_no&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;TP2023052621135500973701287530&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;total_amount&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">100</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;status&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;SUCCESS&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;seller_uid&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;72370059863623948910&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;extra&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;item_id&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;paid_at&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1685106853</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;message&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;order_id&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;N7237478737451911458&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">&quot;ec_pay_trade_no&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;DTPP2305262113529021149660512889&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><h2 id="支付自助校验" tabindex="-1">支付自助校验 <a class="header-anchor" href="#支付自助校验" aria-label="Permalink to &quot;支付自助校验&quot;">​</a></h2><p><a href="https://pay-doc.toutiao.com/tools/sign" target="_blank" rel="noreferrer">支付自动校验</a></p><p>token salt 担保支付中要使用 使用token验签 使用salt签名</p><p>DouyinRequest 中参数名方法 CreateParamSign()</p><p>PayNotifyData中验签方法VerifySign()</p><p>平台公钥没有用到</p></div></div></main><footer class="VPDocFooter" data-v-39a288b8 data-v-09de1c0f><!--[--><!--]--><div class="edit-info" data-v-09de1c0f><!----><div class="last-updated" data-v-09de1c0f><p class="VPLastUpdated" data-v-09de1c0f data-v-7e05ebdb>最后一次更新: <time datetime="2024-04-16T00:33:20.000Z" data-v-7e05ebdb></time></p></div></div><nav class="prev-next" data-v-09de1c0f><div class="pager" data-v-09de1c0f><!----></div><div class="pager" data-v-09de1c0f><a class="VPLink link pager-link next" href="/rscode/appsettings.html" data-v-09de1c0f><!--[--><span class="desc" data-v-09de1c0f>下一页</span><span class="title" data-v-09de1c0f>appsettings</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-5d98c3a5 data-v-e315a0ad><div class="container" data-v-e315a0ad><!----><p class="copyright" data-v-e315a0ad>Copyright © 2024 软商网络 <a target="_blank" href="https://beian.miit.gov.cn">豫ICP备16037953号</a></p></div></footer><!--[--><!--]--></div></div>
    <script>window.__VP_HASH_MAP__=JSON.parse("{\"jyb_guide.md\":\"DdeHSQa_\",\"douyin_readme.md\":\"CeVYCJkJ\",\"jyb_tg.md\":\"DIMD3G6n\",\"rscode_idempotency.md\":\"BCuFu7zf\",\"rscode_channel.md\":\"CtvqTjcG\",\"rscode_cache.md\":\"BtMDde75\",\"markdown-examples.md\":\"DmCL8fCN\",\"rscode_ioc.md\":\"CMW8DqoL\",\"index.md\":\"CkFGx4o6\",\"api-examples.md\":\"By2HohfZ\",\"payment_readme.md\":\"Bh66Imlv\",\"rscode_exception.md\":\"Ur1ZvVXt\",\"rscms_readme.md\":\"BV7UHPgU\",\"jyb_cashier.md\":\"BGOorq9a\",\"rscode_dto.md\":\"B1Qn0tdA\",\"rscode_security_security.md\":\"BUYuvAfO\",\"rscode_security_authcode.md\":\"Cwl75UX4\",\"wx_auth.md\":\"D_NlN2IC\",\"rscode_db_database.md\":\"GfjDpcHv\",\"wx_api.md\":\"CuZp59nd\",\"wx_accesstoken.md\":\"t__AmYpa\",\"rscode_utils_httphelper.md\":\"C80zV9XA\",\"wx_custom-menu.md\":\"ChD1P1iU\",\"rscode_schedulejob.md\":\"DqLS4rjr\",\"wx_kf-wx.md\":\"DYsAsZkJ\",\"wx_kf-mp.md\":\"BZYw5m6v\",\"wx_readme.md\":\"BoqLLqNV\",\"rscode_mcp.md\":\"CxoWEXPB\",\"rscode_log.md\":\"Cvx7Xgim\",\"wx_third-platform.md\":\"CnL8Ykfp\",\"jyb_doc.md\":\"BB7uock3\",\"rscode_guide_readme.md\":\"BgqUeEnU\",\"rscode_msg-formater.md\":\"BpHiWFfZ\",\"rscode_config.md\":\"Dm_KqgID\",\"wx_question.md\":\"Ck904xbU\",\"rscode_guide_change-log.md\":\"C1gMvP61\",\"jyb_readme.md\":\"CbVY2Kv_\",\"rscode_db_freesql.md\":\"n5O0epoo\",\"rscode_storage_local.md\":\"Ch63lc9g\",\"rscode_storage_config.md\":\"C_sh5KtB\",\"rscode_sse.md\":\"d2lJ4eON\",\"wx_qrcode.md\":\"BjFy22x5\",\"wx_init-sdk.md\":\"2VChfh0B\",\"rscode_webapi.md\":\"DaUniwIT\",\"wx_users.md\":\"D0eYi_rS\",\"rscode_utils_xmlhelper.md\":\"CaQZo6mI\",\"rscode_security_cors.md\":\"B5Htbo9g\",\"rscode_utils.md\":\"D2AyQEZz\",\"wx_uniapp-mp-login.md\":\"CQ2OGPIQ\",\"rscode_domain-event.md\":\"BBapd6C0\",\"rscode_guide_getting-started.md\":\"D1T5hkf_\",\"rscode_plugins.md\":\"B3IRA5PX\",\"wx_event-message.md\":\"BL55-N05\",\"rscode_db_unitofwork.md\":\"DCawEvps\",\"rscode_storage_qiniu-api.md\":\"Cy8L0Jmy\",\"rscode_db_petapoco.md\":\"CqiunFi4\",\"wx_js跳转至微信小程序.md\":\"Cnn9O8E6\",\"rscode_i18n.md\":\"Cip0QmIe\",\"rscode_filter.md\":\"FkeeR6QX\",\"rscode_appsettings.md\":\"kMW74ww1\",\"wx_rscode-wechat-helper.md\":\"CHdMoxX0\",\"rscode_validate.md\":\"DBcyaj3d\",\"rscode_storage_demo.md\":\"BEeYaEor\",\"rscode_security_auth.md\":\"DTKZJ_1Q\",\"rscode_threads.md\":\"Dz7_3iL4\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"RsCode\",\"description\":\"开箱即用的.net工具库，助力.net开发\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"outline\":\"deep\",\"outlineTitle\":\"大纲\",\"nav\":[{\"text\":\"RsCode助手\",\"items\":[{\"text\":\"基础配置\",\"link\":\"/rscode/config.md\"},{\"text\":\"常用代码\",\"link\":\"/rscode/utils.md\"},{\"text\":\"appsettings\",\"link\":\"/rscode/appsettings.md\"},{\"text\":\"数据库操作\",\"link\":\"/rscode/db/database.md\"},{\"text\":\"数据安全\",\"link\":\"/rscode/security/security.md\"},{\"text\":\"存储示例\",\"link\":\"/rscode/storage/demo.md\"},{\"text\":\"插件开发\",\"link\":\"/rscode/plugins.md\"}]},{\"text\":\"第三方平台SDK\",\"items\":[{\"text\":\"支付平台SDK\",\"link\":\"/payment/readme.md\"},{\"text\":\"微信平台SDK\",\"link\":\"/wx/readme.md\"},{\"text\":\"抖音平台SDK\",\"link\":\"/douyin/readme.md\"}]},{\"text\":\"智能客服系统\",\"link\":\"https://kefu.rs888.net\"},{\"text\":\"AI工具箱\",\"items\":[{\"text\":\"AI工具箱在线版\",\"link\":\"https://api.rs888.net/app/index.html\"},{\"text\":\"AI工具箱window版\",\"link\":\"https://pan.baidu.com/s/1flQwaG1rWf0-Ea6ZvvS74Q?pwd=zfj1\"}]}],\"sidebar\":{\"/\":[{\"text\":\"热门功能\",\"items\":[{\"text\":\"appsettings\",\"link\":\"/rscode/appsettings.md\"},{\"text\":\"日志管理\",\"link\":\"/rscode/log.md\"},{\"text\":\"依赖注入\",\"link\":\"/rscode/Ioc.md\"},{\"text\":\"数据传输\",\"link\":\"/rscode/dto.md\"},{\"text\":\"数据格式\",\"link\":\"/rscode/msg-formater.md\"},{\"text\":\"数据验证\",\"link\":\"/rscode/validate.md\"},{\"text\":\"数据缓存\",\"link\":\"/rscode/cache.md\"},{\"text\":\"异常处理\",\"link\":\"/rscode/exception.md\"},{\"text\":\"文档生成\",\"link\":\"/rscode/webapi.md\"},{\"text\":\"线程操作\",\"link\":\"/rscode/threads.md\"},{\"text\":\"计划任务\",\"link\":\"/rscode/ScheduleJob.md\"},{\"text\":\"插件管理\",\"link\":\"/rscode/plugins.md\"},{\"text\":\"常用代码\",\"link\":\"/rscode/utils.md\"},{\"text\":\"过滤器\",\"link\":\"/rscode/filter.md\"},{\"text\":\"SSE\",\"link\":\"/rscode/sse.md\"},{\"text\":\"国际化\",\"link\":\"/rscode/i18n.md\"}]},{\"text\":\"数据库\",\"items\":[{\"text\":\"数据库配置\",\"link\":\"/rscode/db/database.md\"},{\"text\":\"UnitOfWork\",\"link\":\"/rscode/db/unitofwork.md\"},{\"text\":\"FreeSql说明\",\"link\":\"/rscode/db/freesql.md\"}]},{\"text\":\"对象存储\",\"items\":[{\"text\":\"存储示例\",\"link\":\"/rscode/storage/demo.md\"},{\"text\":\"参数配置\",\"link\":\"/rscode/storage/config.md\"},{\"text\":\"本地存储\",\"link\":\"/rscode/storage/local.md\"},{\"text\":\"七牛存储\",\"link\":\"/rscode/storage/qiniu-api.md\"}]},{\"text\":\"安全认证\",\"items\":[{\"text\":\"认证授权\",\"link\":\"/rscode/security/auth.md\"},{\"text\":\"数据安全\",\"link\":\"/rscode/security/security.md\"},{\"text\":\"跨域设置\",\"link\":\"/rscode/security/cors.md\"},{\"text\":\"验证码\",\"link\":\"/rscode/security/authcode.md\"}]}],\"/rscode/guide/\":[{\"text\":\"开始\",\"items\":[{\"text\":\"快速入门\",\"link\":\"/rscode/guide/getting-started.md\"},{\"text\":\"数据库配置\",\"link\":\"/rscode/db/database.md\"},{\"text\":\"日志管理\",\"link\":\"/rscode/guide/change-log.md\"}]}],\"/jyb/\":[{\"text\":\"交易宝系统\",\"items\":[{\"text\":\"交易宝简介\",\"link\":\"/jyb/readme.md\"},{\"text\":\"快速使用\",\"link\":\"/jyb/doc.md\"},{\"text\":\"分享有赏\",\"link\":\"/jyb/tg.md\"}]}],\"/wx/\":[{\"text\":\"微信SDK\",\"items\":[{\"text\":\"SDK简介\",\"link\":\"/wx/readme.md\"},{\"text\":\"初始化SDK\",\"link\":\"/wx/init-sdk.md\"},{\"text\":\"微信token管理\",\"link\":\"/wx/accesstoken.md\"},{\"text\":\"事件与消息\",\"link\":\"/wx/event-message.md\"},{\"text\":\"二维码\",\"link\":\"/wx/qrcode.md\"},{\"text\":\"js跳转至微信小程序\",\"link\":\"/wx/js跳转至微信小程序.md\"},{\"text\":\"WechatHelper\",\"link\":\"/wx/RsCode-Wechat-Helper.md\"},{\"text\":\"小程序客服消息\",\"link\":\"/wx/kf-mp.md\"},{\"text\":\"公众号客服消息\",\"link\":\"/wx/kf-wx.md\"},{\"text\":\"公众号菜单\",\"link\":\"/wx/custom-menu.md\"},{\"text\":\"微信用户授权\",\"link\":\"/wx/users.md\"},{\"text\":\"uniapp小程序登录\",\"link\":\"/wx/uniapp-mp-login.md\"},{\"text\":\"微信API\",\"link\":\"/wx/api.md\"},{\"text\":\"微信认证\",\"link\":\"/wx/auth.md\"},{\"text\":\"第三方平台API\",\"link\":\"/wx/third-platform.md\"},{\"text\":\"常见问题\",\"link\":\"/wx/question.md\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/kuiyu/RsCode\"}],\"search\":{\"provider\":\"local\",\"options\":{\"locales\":{\"zh\":{\"translations\":{\"button\":{\"buttonText\":\"搜索\",\"buttonAriaLabel\":\"搜索\"}}}}}},\"lastUpdatedText\":\"更新时间\",\"lastUpdated\":{\"text\":\"最后一次更新\",\"formatOptions\":{\"dateStyle\":\"full\",\"timeStyle\":\"medium\"}},\"docFooter\":{\"prev\":\"上一页\",\"next\":\"下一页\"},\"footer\":{\"message\":\"\",\"copyright\":\"Copyright © 2024 软商网络 <a target=\\\"_blank\\\" href=\\\"https://beian.miit.gov.cn\\\">豫ICP备16037953号</a>\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
    
  </body>
</html>